UvodDeklarisanje u Paskalu
I)kao niz nizova (retko koristi)
Type niz = array [1..15] of real; mat = array [1..20] of niz; Var A: mat;
II) ili drugačije (retko koristi)
type matrica = array[1..20] of array [1..15] of real; Var A: matrica;
III) kao matrica (često se koristi)
type Mat= array [1..20,1..15] of real; Var A : Mat;
Primer: Napisati program koji izračunava sumu pozitivnih vrednosti matrice A (n<=20, m<=15)
Program MatSumaPoz; type Mat=array [1..20,1..15] of real; Var A : mat; n,m,i,j : integer; s: real;
Begin writeln (‘unesite dimenzije matrice n,m’); readln (n,m);
{unos elemenata}
for i:=1 to n do for j:=1 to m do Begin write (‘A[’,i,’,’,j,’]=’); readln (A[i,j]); End;
{izracunavanje sume pozitivnih}
for i:=1 to n do for j:=1 to m do if A[i,j]>0 then s:=s + A[i,j];
{ispis sume}
write (‘suma pozitivnih vrednosti matrice je’, S:10:5); END.
Za vežbu:
Napisati program kojim se za matricu A(n x n) izračunava a) suma kvadrata svih elemenata b) suma negativnih elemenata matrice c) Pozicija (Mi,Mj) elementa koji ima najveću vrednost
Glavna i sporedna dijagonala matrice
Napisati program koji za matricu A (NxN) izračunava a) suma pozitivnih iznad glavne dijagonale b) suma elemenata sa glavne dijagonale c) suma elemenata na sporednoj dijagonali d) vrednost najvećeg elementa na sporednoj dijagonali e) proizvod negativnih elemenata iznad sporedne dijagonale
Program MatDijagonale; type Mat = array [1..100,1..100] of real; Var a:Mat; i,j,n:integer; s, p , max :real;
Begin write (‘unesite dimenzije matrice’); readln (n); for i:=1 to n do for j:=1 to n do Begin write (‘A[’,i,’,’,j,’]=’); readln (A[i,j]); End;
{a)- suma pozitivnih elem. iznad gl. diag}
for i:=1 to n-1 do for j:=(i+1) to n do if A[i,j]>0 then s:=s+A[i,j]; writeln (‘suma je ’,s:10:5);
{b) – suma elem sa glavne diag.} for i:=1 to n do s:=s+A[i,j]; writeln (‘suma je ’,s:10:5);
{c) – suma elem na sporednoj diagonali} for i:=1 to n do s:=s+ A[i,n+1-i]; writeln (‘suma je ’,s:10:5);
{d) – max elem sa sporedne} max:=A[1,n]; for i:=2 to n do if A[i,n+1-i]>max then max:=A[i,n+1-i]; writeln (‘max je ’,max:10:5);
{e)- proizvod negativnih iznad sporedne diag}
p:=1; for i:=1 to n-1 do for j:=1 to n-i do if A[i,j]<0 then p:=p*A[i,j]; writeln (‘proizvod je ’,p:10:5);
END.
Za vežbu:Napisati program kojim se u matrici A(NxN) a) sortiraju elementi vrsta u neopadajućem poretku b) sortiraju u nerastućem poretku elementi svake vrste od glavne dijagonale do desne kolone matrice
|